// index.js
// 获取应用实例
const app = getApp()

Page({
  data: {
    swiperList: [],
    scrollList: [],
    topList: [],
  },
  async onLoad () {
    // 首页轮播图
    let { banners } = await wx.$http.get('/banner', { type: 2 })
    this.setData({
      swiperList: banners,
    })

    // 推荐歌曲
    let { result } = await wx.$http.get('/personalized', { limit: 10 })
    this.setData({
      scrollList: result,
    })

    // 获取排行榜数据
    /*
     * 需求分析：
     *   1. 需要根据idx的值获取对应的数据
     *   2. idx的取值范围是0-20， 我们需要0-4
     *   3. 需要发送5次请求
     * 前++ 和 后++的区别
     *   1. 先看到是运算符还是值
     *   2. 如果先看到的是运算符就先运算再赋值
     *   3. 如果先看到的值那么就先赋值再运算
     * */
    // 获取排行榜单  截取5个数据
    let httpdata = await wx.$http.get('/toplist')
    httpdata.list.splice(5)
    httpdata = httpdata.list

    // 声明临时变量
    let index = 0
    let topLlist = []
    let topObject = {}

    // while请求单个榜单中的歌曲
    while (index < 2) {
      let plyLust = await wx.$http.get('/playlist/detail', {
        id: httpdata[index].id
      })
      topObject = {
        name: plyLust.playlist.name,
        id: plyLust.playlist.id,
        list: plyLust.playlist.tracks.slice(0, 3),
      }
      topLlist.push(topObject)
      this.setData({
        topList: topLlist,
      })
      index++
    }
  },
  httpGet () { },
  meitrtap () {
    wx.navigateTo({
      url: '/pages/recommendSong/recommendSong'
    });
  },
})

/**
 *
 *  getUser() {
    wx.getUserInfo({
      lang: 'zh_CN',
      success: (res) => {
        console.log(res)
      }
    })
  },
  getUserPor() {
    wx.getUserProfile({
      lang: 'zh_CN',
      desc: '展示用户数据',
      success(res) {
        console.log('新API', res)
        wx.login({
          timeout: 2000,
          success: (res) => {
            console.log(res.code);
          }
        })
      }
    })
  },
  bindGetUser(res) {
    console.log(res);
  },
 *
 * **/

/**
Page({
  data: {
    motto: 'Hello World',
    userInfo: {},
    hasUserInfo: false,
    canIUse: wx.canIUse('button.open-type.getUserInfo'),
    canIUseGetUserProfile: false,
    canIUseOpenData: wx.canIUse('open-data.type.userAvatarUrl') && wx.canIUse('open-data.type.userNickName') // 如需尝试获取用户信息可改为false
  },
  // 事件处理函数
  bindViewTap() {
    wx.navigateTo({
      url: '../logs/logs'
    })
  },
  onLoad() {
    if (wx.getUserProfile) {
      this.setData({
        canIUseGetUserProfile: true
      })
    }
  },
  getUserProfile(e) {
    // 推荐使用wx.getUserProfile获取用户信息，开发者每次通过该接口获取用户个人信息均需用户确认，开发者妥善保管用户快速填写的头像昵称，避免重复弹窗
    wx.getUserProfile({
      desc: '展示用户信息', // 声明获取用户个人信息后的用途，后续会展示在弹窗中，请谨慎填写
      success: (res) => {
        console.log(res)
        this.setData({
          userInfo: res.userInfo,
          hasUserInfo: true
        })
      }
    })
  },
  getUserInfo(e) {
    // 不推荐使用getUserInfo获取用户信息，预计自2021年4月13日起，getUserInfo将不再弹出弹窗，并直接返回匿名的用户个人信息
    console.log(e)
    this.setData({
      userInfo: e.detail.userInfo,
      hasUserInfo: true
    })
  }
})
**/
